package loja.services;

import java.util.List;

import loja.dao.DAOFactory;
import loja.dao.despesa.cartao.CartaoCreditoCompraDAO;
import loja.model.conta.titular.Titular;
import loja.model.despesa.cartao.CartaoCreditoCompra;
import loja.services.factory.ServiceFactory;

public class CartaoCreditoCompraService extends DespesaService {

	private CartaoCreditoCompraDAO cartaoCreditoCompraDAO;

	public CartaoCreditoCompraService(ServiceFactory serviceFactory,
			DAOFactory daoFactory) {
		super(serviceFactory, daoFactory);
		this.cartaoCreditoCompraDAO = daoFactory.getCartaoCreditoCompra();

	}

	public void incluirCartaoCreditoCompra(
			CartaoCreditoCompra cartaoCreditoCompra) {
		cartaoCreditoCompraDAO.inlcuir(cartaoCreditoCompra);

	}

	public List<CartaoCreditoCompra> listarCartoesCreditoCompra() {
		return cartaoCreditoCompraDAO.listar();
	}

	public void alterarLimiteCartaoCreditoCompra(Long id, Double limite) {
		CartaoCreditoCompra cartaoCreditoCompra = cartaoCreditoCompraDAO
				.consultarPorId(id);
		cartaoCreditoCompra.setLimite(limite);
		cartaoCreditoCompraDAO.alterar(cartaoCreditoCompra);

	}

	public CartaoCreditoCompra consultarCartaoCreditoPorTitular(Titular titular) {
		return cartaoCreditoCompraDAO.consultarPorTitular(titular);
	}

	public CartaoCreditoCompra consultarCartaoCreditoPorId(Long id) {
		return cartaoCreditoCompraDAO.consultarPorId(id);

	}
}
